Technical Field
The present invention relates generally to the field of communications, and in particular toward processing secure messages on a mobile communication device.
Description of the State of the Art
In many known secure message exchange schemes, signatures, encryption, or both are commonly used to ensure the integrity and confidentiality of information being transferred from a sender to a recipient In an e-mail system for example, the sender of an e-mail message could either sign the message, encrypt the message or both sign and encrypt the message. These actions may be performed using such standards as Secure Multipurpose Internet Mail Extensions (S/MIME), Pretty Good Privacy™ (PGP™), OpenPGP and many other secure e-mail standards.
When an encrypted message is received, it is decrypted before being displayed or otherwise processed. Decryption is a processor-intensive operation which, on a wireless mobile communication device (“mobile device”) with limited processing resources, tends to take a relatively long time. Such time delays may be unacceptable for many mobile device users.
Since the content of encrypted messages should generally remain secure even after receipt, such messages are normally saved to long term storage only in encrypted form. Therefore, each time a received encrypted message is to be opened or displayed for example, the decryption operations are to be repeated. Those skilled in the art will appreciate that there are often two decryption operations that are performed to decrypt the content of many types of encrypted messages such as S/MIME or PGP e-mail messages for example. The key which is used to decrypt the message, referred to as the session key, is first decrypted using a key associated with the recipient. The decrypted session key is then used to decrypt the message. Of these two decryption operations, decryption of the session key, which typically involves public key cryptographic operations, may require a user to enter a password or passphrase, and may be more processor intensive than the actual message decryption. As described above, these operations must normally be repeated each time the message is opened, displayed or accessed, resulting in possibly significant delays in message-related functions.